Modern computer data storage systems, such as storage area networks (SAN) in enterprise environments often use the Fibre Channel (FC) network technology to provide high-speed (e.g., 2 to 16 gigabit/second) data transfers. A Fibre Channel network comprises a number of ports that are connected together, where a port is any entity that actively communicates over the network (either optical fiber or copper), where a port is usually implemented in a device such as disk storage or a Fibre Channel switch. The Fibre Channel protocol transports SCSI commands over Fibre Channel networks, and network topologies include point-to-point, arbitrated loop (devices in a ring), and switched fabric (devices/loops connected through switches). The Fibre Channel protocol comprises five layers in which a protocol mapping layer (FC4) encapsulates application protocols (i.e., SCSI or IP) into protocol data units (PDUs) for delivery to the physical layers (FC2 to FC0).
The SCSI (Small Computer System Interface) standards used by Fibre Channel networks define certain commands, protocols and electrical/optical interface characteristics for connected devices, such as hard disks, tape drives, and controllers. In data storage networks, a SCSI initiator is typically a computer that initiates a SCSI session by sending a SCSI command, and SCSI target is a data storage device that responds to initiators' commands and provides the required input/output data transfers.
As the needs for large-scale data storage have increased, storage virtualization techniques have been developed improve functionality and allow location independence. Storage virtualization abstracts logical storage (e.g., at the block or file level) from the physical storage devices (e.g., disk arrays). The physical storage resources are aggregated into storage pools to form the logical storage, which presents the logical storage space and transparently maps the logical space to physical storage locations. The Fibre Channel standard includes an N_Port ID Virtualization (NPIV) feature in which multiple Fibre Channel node port (N_Port) IDs can share a single physical N_Port. This allows multiple Fibre Channel initiators to occupy a single physical port, easing hardware requirements in SAN systems. This mechanism allows each virtual server to see only its own storage and no other virtual server's storage. NPIV thus allows a single N_Port to register multiple World Wide Port Names (WWPNs) and N_Port identification numbers. In present systems, Fibre Channel base ports and virtual ports are discretely managed and configured on a one-to-one basis in which a physical port is associated with a single virtual port. This makes reconfiguration and management of these ports relatively difficult in most operating conditions. Furthermore, NPIV ports are directly administered, which adds the disadvantage of increased management complexity and difficulty in performing operations such as storage device failover and migration. As the amount of data in enterprise applications increases, the use of highly-available storage is a key consideration and system requirement. A highly-available storage framework allows transparent storage of the same data across several physically separated machines connected within a SAN or other TCP/IP network. For such systems, it is important that storage devices and data centers are able to be efficiently and quickly reconfigured or replicated in case of failure conditions or even routine maintenance. Reconfiguration and migration tasks in present systems is typically a static operation in which the storage devices and/or entire network is taken down to reconfigure the system or perform large-scale migration of the data. Such as requirement is obviously disruptive to system operation and can cause issues with regard to system performance and integrity. Current implementations of failover operations in typical data storage networks generally do not provide for automatic failover in the event of port failure. Failover operations must thus be initiated automatically, and after failover is manually done, storage devices may be seen as different devices on the initiator host. This typically requires a device rescan on the operating system level and/or the backup application level. Failover and failback operations of virtual endpoints in a SCSI target network may also have different properties, operational parameters, and be asynchronously initiated. It may also be desired to selectively or globally cancel these operations based on multiple conditions or system requirements. Present systems, however, do not facilitate easy or efficient control of failover and failback operations of virtual endpoints on an individual operation basis. This means that all failover/failback operation are treated the same with respect to management and control, or they are managed as independent tasks, which adds greatly to processing overhead and system administration.
What is needed therefore is a method of efficiently controlling failover and failback operations of virtual endpoints where such operations may have different operating characteristics and be asynchronously initiated. What is further needed is a method of globally or selectively cancelling failover and failback operations based on multiple system and operating conditions.
The subject matter discussed in the background section should not be assumed to be prior art merely as a result of its mention in the background section. Similarly, a problem mentioned in the background section or associated with the subject matter of the background section should not be assumed to have been previously recognized in the prior art. The subject matter in the background section merely represents different approaches, which in and of themselves may also be inventions. EMC, Data Domain, Data Domain Restorer, and Data Domain Boost are trademarks of EMC Corporation.